<article id="wikiArticle">
<div></div>
<h2 id="错误提示">错误提示</h2>
<pre><code class="language-javascript">SyntaxError: missing } after function body
</code></pre>
<h2 id="错误类型">错误类型</h2>
<p><a href="Reference/Global_Objects/SyntaxError" title="SyntaxError 对象代表尝试解析语法上不合法的代码的错误。"><code>SyntaxError</code></a></p>
<h2 id="哪里出错了？">哪里出错了？</h2>
<p>在创建函数的时候出现了语法错误。检查一下闭合花括号以及括号的顺序是否正确。将代码进行缩进或者美化可以让你更容易找到问题之所在。</p>
<h2 id="示例">示例</h2>
<h3 id="遗漏的闭合花括号">遗漏的闭合花括号</h3>
<p>通常是因为在函数声明中遗漏了花括号：</p>
<pre><code class="language-js example-bad">var charge = function() {
  if (sunny) {
    useSolarCells();
  } else {
    promptBikeRide();
};
</code></pre>
<p>正确的应该是这样的：</p>
<pre><code class="language-js example-good">var charge = function() {
  if (sunny) {
    useSolarCells();
  } else {
    promptBikeRide(); 
  }
};</code></pre>
<p>当使用立即调用函数表达式（<a class="glossaryLink" href="/en-US/docs/Glossary/IIFE" title="IIFE: An IIFE (Immediately Invoked Function Expression) is a JavaScript function that runs as soon as it is defined.">IIFE</a>）、<a href="/en-US/docs/Web/JavaScript/Closures">闭包</a>或者其他使用了大量的花括号以及括号的结构体的时候，问题会更加隐蔽。</p>
<pre><code class="language-js example-bad">(function() { if (true) { return false; } );
</code></pre>
<p>通常将代码语句按照层级缩进以及对缩进进行复核会有助于错误的发现。</p>
<pre><code class="language-js example-good">(function() {
  if (true) {
    return false;
  }
});</code></pre>
<h2 id="相关内容">相关内容</h2>
<ul>
<li><a href="/en-US/docs/Web/JavaScript/Guide/Functions">Functions</a></li>
</ul>
</article>